import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    // DES: 定义可交互变量
    userInfo: {
      user_name: '',
      user_pwd: '',
      address: '',
      sexual: '',
      person_sign: '',
      hobby_choose: '',
    },
    isLogin: false,
    user_name: '',
    index: 0
  },
  mutations: {
    // DES: 定义可执行的回调函数,传递参数...好像不能直接传一个对象，原来是可以传递对象的，但是前面要加上state变量，仅有一个变量会报错
    saveUserInfo (state, userInfo) {
      console.log('输出中转UserInfo:' + userInfo)
      this.state.userInfo = userInfo
      this.state.isLogin = true
    },
    // saveUserInfoJson (state, userInfo) {
    //   console.log('输出中转UserInfo---JSON:' + userInfo)
    //   this.state.userInfo = JSON.parse(userInfo)
    // },

    saveUserName (state, userName) {
      this.state.user_name = userName
    },

    saveStateInfo () {
      this.state.index++
    }
  },
  actions: {},
  modules: {}
})
